class Solution {
    public int minSubArrayLen(int target, int[] nums) {
        int sum = 0;
        int ret = Integer.MAX_VALUE;
        for(int left=0,right=0;right<nums.length;right++) {
            sum+=nums[right];//进窗口
            while(sum>=target) {//判断
                ret = Math.min(right-left+1,ret);//更新结果
                sum-=nums[left];
                left++;
            }
        }
        //要考虑特殊情况：不存在
        return ret==Integer.MAX_VALUE ? 0:ret;
    }
}
